有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我想用Java从右向左打印*请提供输入

我要解决的问题是我必须从右向左打印*。如果我给5,那么第一个*下一行**等******必须打印,对齐必须从右到左

import java.util.Formatter;
import java.util.Scanner;


public class Problemfour {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int t = in.nextInt();
        int t1 = 1;
        String str = "*";
        while (t1 <= t) {
            for (int i = 1; i <= t1; i++) {
                System.out.print(str);
            }
            System.out.println("");
            t1 += 1;
        }
    }
}

共 (1) 个答案

  1. # 1 楼答案

    以下是Java-8解决方案,只是为了好玩:

    public static void main(String[] args) {
        int t = new Scanner(System.in).nextInt();
        IntStream.rangeClosed(1, t)
                .mapToObj(n -> 
                    String.join("", Collections.nCopies(t - n, " ")) +
                    String.join("", Collections.nCopies(n, "#")))
                .forEach(System.out::println);
    }